{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "Deep Neural Networks.ipynb",
      "version": "0.3.2",
      "provenance": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "metadata": {
        "id": "HKQSJk1Mssni",
        "colab_type": "code",
        "outputId": "406e997d-1b0b-4a49-851c-a51ec9d38f81",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 65
        }
      },
      "cell_type": "code",
      "source": [
        "!pip3 install torch"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Requirement already satisfied: torch in /usr/local/lib/python3.6/dist-packages (1.0.0)\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "hFXnWDRhsx5v",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "import torch\n",
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "import torch.nn as nn\n",
        "from sklearn import datasets\n"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "QCMUlB9Ixk3h",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "n_pts = 500\n",
        "X, y = datasets.make_circles(n_samples=n_pts, random_state=123, noise=0.1, factor=0.2)\n",
        "x_data = torch.Tensor(X)\n",
        "y_data = torch.Tensor(y.reshape(500, 1))"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "oLHJ4q5pyx56",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "def scatter_plot():\n",
        "  plt.scatter(X[y==0, 0], X[y==0, 1])\n",
        "  plt.scatter(X[y==1, 0], X[y==1, 1])"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "AzVGT6CyDgNM",
        "colab_type": "code",
        "outputId": "fe439fe3-8e88-4429-a392-0bbd72ab20a5",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 347
        }
      },
      "cell_type": "code",
      "source": [
        "scatter_plot()"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n6OcAAAAASUVORK5CYII=\n",
            "text/plain": [
              "<Figure size 576x396 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "X1wjceQT0qyG",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "class Model(nn.Module):\n",
        "  def __init__(self, input_size, H1, output_size):\n",
        "    super().__init__()\n",
        "    self.linear = nn.Linear(input_size, H1)\n",
        "    self.linear2 = nn.Linear(H1, output_size)\n",
        "  def forward(self, x):\n",
        "    x = torch.sigmoid(self.linear(x))\n",
        "    x = torch.sigmoid(self.linear2(x))\n",
        "    return x\n",
        "  def predict(self, x):\n",
        "    pred = self.forward(x)\n",
        "    if pred >= 0.5:\n",
        "      return 1\n",
        "    else: \n",
        "      return 0"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "_iEqXYfO7FHf",
        "colab_type": "code",
        "outputId": "dc1bb58c-bfe1-4576-9537-a9da3ef479bc",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 153
        }
      },
      "cell_type": "code",
      "source": [
        "torch.manual_seed(2)\n",
        "model = Model(2, 4, 1)\n",
        "print(list(model.parameters()))"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "[Parameter containing:\n",
            "tensor([[ 0.1622, -0.1683],\n",
            "        [ 0.1939, -0.0361],\n",
            "        [ 0.3021,  0.1683],\n",
            "        [-0.0813, -0.5717]], requires_grad=True), Parameter containing:\n",
            "tensor([ 0.1614, -0.6260,  0.0929,  0.0470], requires_grad=True), Parameter containing:\n",
            "tensor([[-0.1099,  0.4088,  0.0334,  0.2073]], requires_grad=True), Parameter containing:\n",
            "tensor([0.2116], requires_grad=True)]\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "5iYIwrM2Dotk",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "criterion = nn.BCELoss()\n",
        "optimizer = torch.optim.Adam(model.parameters(), lr=0.1)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "LALoFQdLQh4G",
        "colab_type": "code",
        "outputId": "0613749a-f6a7-41bb-b41d-5ab19895b3d7",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 17017
        }
      },
      "cell_type": "code",
      "source": [
        "epochs = 1000\n",
        "losses = []\n",
        "for i in range(epochs):\n",
        "  y_pred = model.forward(x_data)\n",
        "  loss = criterion(y_pred, y_data)\n",
        "  print(\"epoch:\", i, \"loss\", loss.item())\n",
        "  losses.append(loss.item())\n",
        "  optimizer.zero_grad()\n",
        "  loss.backward()\n",
        "  optimizer.step()"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "epoch: 0 loss 0.7148522138595581\n",
            "epoch: 1 loss 0.6947312355041504\n",
            "epoch: 2 loss 0.6955161094665527\n",
            "epoch: 3 loss 0.7014897465705872\n",
            "epoch: 4 loss 0.7013992667198181\n",
            "epoch: 5 loss 0.697472095489502\n",
            "epoch: 6 loss 0.6939275860786438\n",
            "epoch: 7 loss 0.6928625106811523\n",
            "epoch: 8 loss 0.693941593170166\n",
            "epoch: 9 loss 0.6954426765441895\n",
            "epoch: 10 loss 0.6958808302879333\n",
            "epoch: 11 loss 0.6949241757392883\n",
            "epoch: 12 loss 0.693157970905304\n",
            "epoch: 13 loss 0.6914014220237732\n",
            "epoch: 14 loss 0.6901755332946777\n",
            "epoch: 15 loss 0.6894776225090027\n",
            "epoch: 16 loss 0.6888664364814758\n",
            "epoch: 17 loss 0.6877952814102173\n",
            "epoch: 18 loss 0.6859349608421326\n",
            "epoch: 19 loss 0.6832882165908813\n",
            "epoch: 20 loss 0.6800878047943115\n",
            "epoch: 21 loss 0.6766111850738525\n",
            "epoch: 22 loss 0.6730255484580994\n",
            "epoch: 23 loss 0.6693331003189087\n",
            "epoch: 24 loss 0.6653968095779419\n",
            "epoch: 25 loss 0.661038875579834\n",
            "epoch: 26 loss 0.6561349034309387\n",
            "epoch: 27 loss 0.6506633758544922\n",
            "epoch: 28 loss 0.6446858048439026\n",
            "epoch: 29 loss 0.6382841467857361\n",
            "epoch: 30 loss 0.6314954161643982\n",
            "epoch: 31 loss 0.6242801547050476\n",
            "epoch: 32 loss 0.6165382266044617\n",
            "epoch: 33 loss 0.6081583499908447\n",
            "epoch: 34 loss 0.599071741104126\n",
            "epoch: 35 loss 0.5892831683158875\n",
            "epoch: 36 loss 0.5788646340370178\n",
            "epoch: 37 loss 0.567934513092041\n",
            "epoch: 38 loss 0.5566170811653137\n",
            "epoch: 39 loss 0.5450131893157959\n",
            "epoch: 40 loss 0.5331881046295166\n",
            "epoch: 41 loss 0.5211832523345947\n",
            "epoch: 42 loss 0.5090473890304565\n",
            "epoch: 43 loss 0.4968593716621399\n",
            "epoch: 44 loss 0.4847228527069092\n",
            "epoch: 45 loss 0.47273701429367065\n",
            "epoch: 46 loss 0.4609636068344116\n",
            "epoch: 47 loss 0.4494229555130005\n",
            "epoch: 48 loss 0.43812456727027893\n",
            "epoch: 49 loss 0.4271085262298584\n",
            "epoch: 50 loss 0.4164563715457916\n",
            "epoch: 51 loss 0.40626832842826843\n",
            "epoch: 52 loss 0.39661893248558044\n",
            "epoch: 53 loss 0.3875318765640259\n",
            "epoch: 54 loss 0.378994345664978\n",
            "epoch: 55 loss 0.3709823787212372\n",
            "epoch: 56 loss 0.36346206068992615\n",
            "epoch: 57 loss 0.3563742935657501\n",
            "epoch: 58 loss 0.3496249318122864\n",
            "epoch: 59 loss 0.3431106209754944\n",
            "epoch: 60 loss 0.3367486596107483\n",
            "epoch: 61 loss 0.3304867148399353\n",
            "epoch: 62 loss 0.3242776691913605\n",
            "epoch: 63 loss 0.31806063652038574\n",
            "epoch: 64 loss 0.31176477670669556\n",
            "epoch: 65 loss 0.30532965064048767\n",
            "epoch: 66 loss 0.2987109124660492\n",
            "epoch: 67 loss 0.29187169671058655\n",
            "epoch: 68 loss 0.2847749590873718\n",
            "epoch: 69 loss 0.2773880362510681\n",
            "epoch: 70 loss 0.26968953013420105\n",
            "epoch: 71 loss 0.26166868209838867\n",
            "epoch: 72 loss 0.25331950187683105\n",
            "epoch: 73 loss 0.24464131891727448\n",
            "epoch: 74 loss 0.23564566671848297\n",
            "epoch: 75 loss 0.22636836767196655\n",
            "epoch: 76 loss 0.2168763428926468\n",
            "epoch: 77 loss 0.20726433396339417\n",
            "epoch: 78 loss 0.19764815270900726\n",
            "epoch: 79 loss 0.18815308809280396\n",
            "epoch: 80 loss 0.17889809608459473\n",
            "epoch: 81 loss 0.16998136043548584\n",
            "epoch: 82 loss 0.161468505859375\n",
            "epoch: 83 loss 0.15338830649852753\n",
            "epoch: 84 loss 0.1457403600215912\n",
            "epoch: 85 loss 0.13850761950016022\n",
            "epoch: 86 loss 0.13167054951190948\n",
            "epoch: 87 loss 0.12521560490131378\n",
            "epoch: 88 loss 0.11913655698299408\n",
            "epoch: 89 loss 0.11343125998973846\n",
            "epoch: 90 loss 0.10809607803821564\n",
            "epoch: 91 loss 0.10312210768461227\n",
            "epoch: 92 loss 0.09849374741315842\n",
            "epoch: 93 loss 0.09419038146734238\n",
            "epoch: 94 loss 0.09018869698047638\n",
            "epoch: 95 loss 0.08646497875452042\n",
            "epoch: 96 loss 0.08299638330936432\n",
            "epoch: 97 loss 0.0797617956995964\n",
            "epoch: 98 loss 0.07674173265695572\n",
            "epoch: 99 loss 0.07391861081123352\n",
            "epoch: 100 loss 0.07127668708562851\n",
            "epoch: 101 loss 0.06880202144384384\n",
            "epoch: 102 loss 0.06648234277963638\n",
            "epoch: 103 loss 0.06430692970752716\n",
            "epoch: 104 loss 0.06226589158177376\n",
            "epoch: 105 loss 0.060350000858306885\n",
            "epoch: 106 loss 0.058550454676151276\n",
            "epoch: 107 loss 0.05685851722955704\n",
            "epoch: 108 loss 0.05526623874902725\n",
            "epoch: 109 loss 0.053765829652547836\n",
            "epoch: 110 loss 0.05235031992197037\n",
            "epoch: 111 loss 0.05101332813501358\n",
            "epoch: 112 loss 0.04974920675158501\n",
            "epoch: 113 loss 0.04855281487107277\n",
            "epoch: 114 loss 0.04741957038640976\n",
            "epoch: 115 loss 0.04634511098265648\n",
            "epoch: 116 loss 0.045325327664613724\n",
            "epoch: 117 loss 0.044356316328048706\n",
            "epoch: 118 loss 0.043434325605630875\n",
            "epoch: 119 loss 0.04255584254860878\n",
            "epoch: 120 loss 0.041717443615198135\n",
            "epoch: 121 loss 0.040916189551353455\n",
            "epoch: 122 loss 0.04014918580651283\n",
            "epoch: 123 loss 0.03941398113965988\n",
            "epoch: 124 loss 0.038708340376615524\n",
            "epoch: 125 loss 0.03803040459752083\n",
            "epoch: 126 loss 0.03737841546535492\n",
            "epoch: 127 loss 0.03675095736980438\n",
            "epoch: 128 loss 0.03614671528339386\n",
            "epoch: 129 loss 0.03556445986032486\n",
            "epoch: 130 loss 0.03500307723879814\n",
            "epoch: 131 loss 0.03446146845817566\n",
            "epoch: 132 loss 0.03393857553601265\n",
            "epoch: 133 loss 0.033433444797992706\n",
            "epoch: 134 loss 0.032945115119218826\n",
            "epoch: 135 loss 0.032472606748342514\n",
            "epoch: 136 loss 0.03201509639620781\n",
            "epoch: 137 loss 0.03157180920243263\n",
            "epoch: 138 loss 0.031141983345150948\n",
            "epoch: 139 loss 0.030724940821528435\n",
            "epoch: 140 loss 0.03032008372247219\n",
            "epoch: 141 loss 0.029926858842372894\n",
            "epoch: 142 loss 0.029544737190008163\n",
            "epoch: 143 loss 0.02917322888970375\n",
            "epoch: 144 loss 0.028811901807785034\n",
            "epoch: 145 loss 0.02846027910709381\n",
            "epoch: 146 loss 0.02811797335743904\n",
            "epoch: 147 loss 0.02778458409011364\n",
            "epoch: 148 loss 0.027459708973765373\n",
            "epoch: 149 loss 0.027142977342009544\n",
            "epoch: 150 loss 0.026834040880203247\n",
            "epoch: 151 loss 0.02653254009783268\n",
            "epoch: 152 loss 0.026238173246383667\n",
            "epoch: 153 loss 0.025950629264116287\n",
            "epoch: 154 loss 0.025669632479548454\n",
            "epoch: 155 loss 0.025394927710294724\n",
            "epoch: 156 loss 0.025126241147518158\n",
            "epoch: 157 loss 0.02486337535083294\n",
            "epoch: 158 loss 0.02460610494017601\n",
            "epoch: 159 loss 0.02435426414012909\n",
            "epoch: 160 loss 0.024107566103339195\n",
            "epoch: 161 loss 0.023865947499871254\n",
            "epoch: 162 loss 0.02362917549908161\n",
            "epoch: 163 loss 0.02339707314968109\n",
            "epoch: 164 loss 0.023169543594121933\n",
            "epoch: 165 loss 0.022946393117308617\n",
            "epoch: 166 loss 0.02272750623524189\n",
            "epoch: 167 loss 0.02251272276043892\n",
            "epoch: 168 loss 0.02230190299451351\n",
            "epoch: 169 loss 0.02209496684372425\n",
            "epoch: 170 loss 0.021891767159104347\n",
            "epoch: 171 loss 0.02169221267104149\n",
            "epoch: 172 loss 0.021496199071407318\n",
            "epoch: 173 loss 0.02130361646413803\n",
            "epoch: 174 loss 0.021114341914653778\n",
            "epoch: 175 loss 0.02092834562063217\n",
            "epoch: 176 loss 0.020745472982525826\n",
            "epoch: 177 loss 0.020565692335367203\n",
            "epoch: 178 loss 0.020388884469866753\n",
            "epoch: 179 loss 0.020214980468153954\n",
            "epoch: 180 loss 0.020043928176164627\n",
            "epoch: 181 loss 0.01987561583518982\n",
            "epoch: 182 loss 0.019709981977939606\n",
            "epoch: 183 loss 0.01954697072505951\n",
            "epoch: 184 loss 0.019386528059840202\n",
            "epoch: 185 loss 0.01922856643795967\n",
            "epoch: 186 loss 0.01907302625477314\n",
            "epoch: 187 loss 0.018919849768280983\n",
            "epoch: 188 loss 0.018768999725580215\n",
            "epoch: 189 loss 0.018620390444993973\n",
            "epoch: 190 loss 0.018473971635103226\n",
            "epoch: 191 loss 0.018329724669456482\n",
            "epoch: 192 loss 0.01818755455315113\n",
            "epoch: 193 loss 0.018047457560896873\n",
            "epoch: 194 loss 0.017909366637468338\n",
            "epoch: 195 loss 0.017773212864995003\n",
            "epoch: 196 loss 0.017638985067605972\n",
            "epoch: 197 loss 0.017506632953882217\n",
            "epoch: 198 loss 0.017376108095049858\n",
            "epoch: 199 loss 0.01724737510085106\n",
            "epoch: 200 loss 0.017120394855737686\n",
            "epoch: 201 loss 0.016995126381516457\n",
            "epoch: 202 loss 0.016871538013219833\n",
            "epoch: 203 loss 0.016749590635299683\n",
            "epoch: 204 loss 0.016629254445433617\n",
            "epoch: 205 loss 0.016510486602783203\n",
            "epoch: 206 loss 0.016393277794122696\n",
            "epoch: 207 loss 0.016277581453323364\n",
            "epoch: 208 loss 0.016163358464837074\n",
            "epoch: 209 loss 0.016050592064857483\n",
            "epoch: 210 loss 0.015939239412546158\n",
            "epoch: 211 loss 0.0158293005079031\n",
            "epoch: 212 loss 0.015720723196864128\n",
            "epoch: 213 loss 0.01561348419636488\n",
            "epoch: 214 loss 0.015507567673921585\n",
            "epoch: 215 loss 0.015402935445308685\n",
            "epoch: 216 loss 0.015299572609364986\n",
            "epoch: 217 loss 0.015197459608316422\n",
            "epoch: 218 loss 0.01509656012058258\n",
            "epoch: 219 loss 0.014996864832937717\n",
            "epoch: 220 loss 0.014898356050252914\n",
            "epoch: 221 loss 0.014800972305238247\n",
            "epoch: 222 loss 0.01470473688095808\n",
            "epoch: 223 loss 0.01460962276905775\n",
            "epoch: 224 loss 0.014515599235892296\n",
            "epoch: 225 loss 0.014422631822526455\n",
            "epoch: 226 loss 0.014330736361443996\n",
            "epoch: 227 loss 0.01423988863825798\n",
            "epoch: 228 loss 0.014150048606097698\n",
            "epoch: 229 loss 0.014061207883059978\n",
            "epoch: 230 loss 0.01397334598004818\n",
            "epoch: 231 loss 0.013886465691030025\n",
            "epoch: 232 loss 0.013800540938973427\n",
            "epoch: 233 loss 0.013715534470975399\n",
            "epoch: 234 loss 0.013631449081003666\n",
            "epoch: 235 loss 0.013548275455832481\n",
            "epoch: 236 loss 0.013465991243720055\n",
            "epoch: 237 loss 0.01338458526879549\n",
            "epoch: 238 loss 0.013304034247994423\n",
            "epoch: 239 loss 0.013224335387349129\n",
            "epoch: 240 loss 0.01314546912908554\n",
            "epoch: 241 loss 0.013067418709397316\n",
            "epoch: 242 loss 0.012990178540349007\n",
            "epoch: 243 loss 0.01291373185813427\n",
            "epoch: 244 loss 0.012838074006140232\n",
            "epoch: 245 loss 0.012763177044689655\n",
            "epoch: 246 loss 0.012689037248492241\n",
            "epoch: 247 loss 0.012615654617547989\n",
            "epoch: 248 loss 0.012542994692921638\n",
            "epoch: 249 loss 0.012471077032387257\n",
            "epoch: 250 loss 0.012399842031300068\n",
            "epoch: 251 loss 0.012329336255788803\n",
            "epoch: 252 loss 0.012259519658982754\n",
            "epoch: 253 loss 0.012190369889140129\n",
            "epoch: 254 loss 0.012121908366680145\n",
            "epoch: 255 loss 0.01205409225076437\n",
            "epoch: 256 loss 0.011986932717263699\n",
            "epoch: 257 loss 0.01192041952162981\n",
            "epoch: 258 loss 0.011854537762701511\n",
            "epoch: 259 loss 0.011789293959736824\n",
            "epoch: 260 loss 0.011724628508090973\n",
            "epoch: 261 loss 0.011660599149763584\n",
            "epoch: 262 loss 0.01159717421978712\n",
            "epoch: 263 loss 0.0115343127399683\n",
            "epoch: 264 loss 0.011472043581306934\n",
            "epoch: 265 loss 0.011410360224545002\n",
            "epoch: 266 loss 0.011349229142069817\n",
            "epoch: 267 loss 0.011288655921816826\n",
            "epoch: 268 loss 0.011228621937334538\n",
            "epoch: 269 loss 0.011169148609042168\n",
            "epoch: 270 loss 0.011110197752714157\n",
            "epoch: 271 loss 0.011051773093640804\n",
            "epoch: 272 loss 0.010993871837854385\n",
            "epoch: 273 loss 0.01093649584800005\n",
            "epoch: 274 loss 0.01087961345911026\n",
            "epoch: 275 loss 0.010823245160281658\n",
            "epoch: 276 loss 0.010767343454062939\n",
            "epoch: 277 loss 0.010711945593357086\n",
            "epoch: 278 loss 0.010657034814357758\n",
            "epoch: 279 loss 0.010602590627968311\n",
            "epoch: 280 loss 0.010548616759479046\n",
            "epoch: 281 loss 0.010495091788470745\n",
            "epoch: 282 loss 0.010442028753459454\n",
            "epoch: 283 loss 0.010389419272542\n",
            "epoch: 284 loss 0.010337254032492638\n",
            "epoch: 285 loss 0.010285531170666218\n",
            "epoch: 286 loss 0.010234236717224121\n",
            "epoch: 287 loss 0.010183373466134071\n",
            "epoch: 288 loss 0.010132933035492897\n",
            "epoch: 289 loss 0.010082898661494255\n",
            "epoch: 290 loss 0.010033289901912212\n",
            "epoch: 291 loss 0.00998407881706953\n",
            "epoch: 292 loss 0.009935273788869381\n",
            "epoch: 293 loss 0.00988686177879572\n",
            "epoch: 294 loss 0.009838852100074291\n",
            "epoch: 295 loss 0.009791211225092411\n",
            "epoch: 296 loss 0.009743969887495041\n",
            "epoch: 297 loss 0.009697097353637218\n",
            "epoch: 298 loss 0.009650609456002712\n",
            "epoch: 299 loss 0.009604481048882008\n",
            "epoch: 300 loss 0.009558715857565403\n",
            "epoch: 301 loss 0.00951332040131092\n",
            "epoch: 302 loss 0.009468273259699345\n",
            "epoch: 303 loss 0.009423571638762951\n",
            "epoch: 304 loss 0.009379226714372635\n",
            "epoch: 305 loss 0.009335225448012352\n",
            "epoch: 306 loss 0.009291558526456356\n",
            "epoch: 307 loss 0.009248236194252968\n",
            "epoch: 308 loss 0.009205232374370098\n",
            "epoch: 309 loss 0.009162569418549538\n",
            "epoch: 310 loss 0.009120220318436623\n",
            "epoch: 311 loss 0.009078188799321651\n",
            "epoch: 312 loss 0.009036477655172348\n",
            "epoch: 313 loss 0.008995087817311287\n",
            "epoch: 314 loss 0.008954005315899849\n",
            "epoch: 315 loss 0.00891322921961546\n",
            "epoch: 316 loss 0.008872750215232372\n",
            "epoch: 317 loss 0.008832575753331184\n",
            "epoch: 318 loss 0.008792692795395851\n",
            "epoch: 319 loss 0.008753113448619843\n",
            "epoch: 320 loss 0.00871380977332592\n",
            "epoch: 321 loss 0.008674792014062405\n",
            "epoch: 322 loss 0.008636065758764744\n",
            "epoch: 323 loss 0.00859761517494917\n",
            "epoch: 324 loss 0.00855944398790598\n",
            "epoch: 325 loss 0.008521548472344875\n",
            "epoch: 326 loss 0.008483917452394962\n",
            "epoch: 327 loss 0.008446559309959412\n",
            "epoch: 328 loss 0.008409467525780201\n",
            "epoch: 329 loss 0.008372627198696136\n",
            "epoch: 330 loss 0.008336056023836136\n",
            "epoch: 331 loss 0.008299744687974453\n",
            "epoch: 332 loss 0.008263678289949894\n",
            "epoch: 333 loss 0.008227871730923653\n",
            "epoch: 334 loss 0.008192315697669983\n",
            "epoch: 335 loss 0.008156996220350266\n",
            "epoch: 336 loss 0.008121922612190247\n",
            "epoch: 337 loss 0.008087096735835075\n",
            "epoch: 338 loss 0.008052508346736431\n",
            "epoch: 339 loss 0.008018153719604015\n",
            "epoch: 340 loss 0.007984041236341\n",
            "epoch: 341 loss 0.007950142957270145\n",
            "epoch: 342 loss 0.007916491478681564\n",
            "epoch: 343 loss 0.00788305327296257\n",
            "epoch: 344 loss 0.007849844172596931\n",
            "epoch: 345 loss 0.007816866971552372\n",
            "epoch: 346 loss 0.007784097921103239\n",
            "epoch: 347 loss 0.007751546334475279\n",
            "epoch: 348 loss 0.007719220127910376\n",
            "epoch: 349 loss 0.007687097880989313\n",
            "epoch: 350 loss 0.007655191235244274\n",
            "epoch: 351 loss 0.007623497396707535\n",
            "epoch: 352 loss 0.007592014968395233\n",
            "epoch: 353 loss 0.007560729049146175\n",
            "epoch: 354 loss 0.0075296503491699696\n",
            "epoch: 355 loss 0.007498762104660273\n",
            "epoch: 356 loss 0.007468090392649174\n",
            "epoch: 357 loss 0.00743761146441102\n",
            "epoch: 358 loss 0.0074073271825909615\n",
            "epoch: 359 loss 0.007377236150205135\n",
            "epoch: 360 loss 0.007347338367253542\n",
            "epoch: 361 loss 0.007317631505429745\n",
            "epoch: 362 loss 0.007288113236427307\n",
            "epoch: 363 loss 0.007258783094584942\n",
            "epoch: 364 loss 0.0072296373546123505\n",
            "epoch: 365 loss 0.0072006783448159695\n",
            "epoch: 366 loss 0.007171896751970053\n",
            "epoch: 367 loss 0.007143298629671335\n",
            "epoch: 368 loss 0.007114880718290806\n",
            "epoch: 369 loss 0.00708663510158658\n",
            "epoch: 370 loss 0.007058569695800543\n",
            "epoch: 371 loss 0.007030674256384373\n",
            "epoch: 372 loss 0.007002952042967081\n",
            "epoch: 373 loss 0.006975407246500254\n",
            "epoch: 374 loss 0.006948031950742006\n",
            "epoch: 375 loss 0.006920812651515007\n",
            "epoch: 376 loss 0.006893768906593323\n",
            "epoch: 377 loss 0.006866890005767345\n",
            "epoch: 378 loss 0.006840173155069351\n",
            "epoch: 379 loss 0.006813624873757362\n",
            "epoch: 380 loss 0.006787230260670185\n",
            "epoch: 381 loss 0.006761001423001289\n",
            "epoch: 382 loss 0.006734933238476515\n",
            "epoch: 383 loss 0.006709013134241104\n",
            "epoch: 384 loss 0.006683253217488527\n",
            "epoch: 385 loss 0.006657651625573635\n",
            "epoch: 386 loss 0.00663219578564167\n",
            "epoch: 387 loss 0.006606899667531252\n",
            "epoch: 388 loss 0.00658175116404891\n",
            "epoch: 389 loss 0.006556747015565634\n",
            "epoch: 390 loss 0.006531901191920042\n",
            "epoch: 391 loss 0.0065071978606283665\n",
            "epoch: 392 loss 0.006482640281319618\n",
            "epoch: 393 loss 0.006458229850977659\n",
            "epoch: 394 loss 0.006433961447328329\n",
            "epoch: 395 loss 0.0064098346047103405\n",
            "epoch: 396 loss 0.0063858479261398315\n",
            "epoch: 397 loss 0.0063620032742619514\n",
            "epoch: 398 loss 0.006338302977383137\n",
            "epoch: 399 loss 0.006314740050584078\n",
            "epoch: 400 loss 0.006291310302913189\n",
            "epoch: 401 loss 0.0062680174596607685\n",
            "epoch: 402 loss 0.006244867108762264\n",
            "epoch: 403 loss 0.006221843417733908\n",
            "epoch: 404 loss 0.0061989580281078815\n",
            "epoch: 405 loss 0.006176200229674578\n",
            "epoch: 406 loss 0.006153573282063007\n",
            "epoch: 407 loss 0.006131080910563469\n",
            "epoch: 408 loss 0.0061087156645953655\n",
            "epoch: 409 loss 0.006086483597755432\n",
            "epoch: 410 loss 0.0060643707402050495\n",
            "epoch: 411 loss 0.0060423919931054115\n",
            "epoch: 412 loss 0.006020532455295324\n",
            "epoch: 413 loss 0.00599880563095212\n",
            "epoch: 414 loss 0.005977187305688858\n",
            "epoch: 415 loss 0.005955709144473076\n",
            "epoch: 416 loss 0.005934345535933971\n",
            "epoch: 417 loss 0.005913109984248877\n",
            "epoch: 418 loss 0.00589198712259531\n",
            "epoch: 419 loss 0.005870979279279709\n",
            "epoch: 420 loss 0.00585010414943099\n",
            "epoch: 421 loss 0.005829344503581524\n",
            "epoch: 422 loss 0.005808691028505564\n",
            "epoch: 423 loss 0.005788162350654602\n",
            "epoch: 424 loss 0.0057677458971738815\n",
            "epoch: 425 loss 0.005747445393353701\n",
            "epoch: 426 loss 0.005727254785597324\n",
            "epoch: 427 loss 0.005707186181098223\n",
            "epoch: 428 loss 0.005687224678695202\n",
            "epoch: 429 loss 0.005667377263307571\n",
            "epoch: 430 loss 0.00564763555303216\n",
            "epoch: 431 loss 0.005628006532788277\n",
            "epoch: 432 loss 0.0056084864772856236\n",
            "epoch: 433 loss 0.005589072126895189\n",
            "epoch: 434 loss 0.005569774657487869\n",
            "epoch: 435 loss 0.005550573579967022\n",
            "epoch: 436 loss 0.005531479138880968\n",
            "epoch: 437 loss 0.005512497387826443\n",
            "epoch: 438 loss 0.005493616685271263\n",
            "epoch: 439 loss 0.005474843550473452\n",
            "epoch: 440 loss 0.005456168670207262\n",
            "epoch: 441 loss 0.005437597166746855\n",
            "epoch: 442 loss 0.005419131834059954\n",
            "epoch: 443 loss 0.005400771275162697\n",
            "epoch: 444 loss 0.005382504779845476\n",
            "epoch: 445 loss 0.005364337470382452\n",
            "epoch: 446 loss 0.005346277728676796\n",
            "epoch: 447 loss 0.005328308325260878\n",
            "epoch: 448 loss 0.005310437176376581\n",
            "epoch: 449 loss 0.005292666610330343\n",
            "epoch: 450 loss 0.0052749947644770145\n",
            "epoch: 451 loss 0.005257411859929562\n",
            "epoch: 452 loss 0.005239939317107201\n",
            "epoch: 453 loss 0.00522254453971982\n",
            "epoch: 454 loss 0.005205248016864061\n",
            "epoch: 455 loss 0.005188052076846361\n",
            "epoch: 456 loss 0.005170947872102261\n",
            "epoch: 457 loss 0.005153931211680174\n",
            "epoch: 458 loss 0.005137014668434858\n",
            "epoch: 459 loss 0.005120173562318087\n",
            "epoch: 460 loss 0.005103442817926407\n",
            "epoch: 461 loss 0.005086786113679409\n",
            "epoch: 462 loss 0.0050702267326414585\n",
            "epoch: 463 loss 0.00505375349894166\n",
            "epoch: 464 loss 0.005037365946918726\n",
            "epoch: 465 loss 0.005021071992814541\n",
            "epoch: 466 loss 0.005004859995096922\n",
            "epoch: 467 loss 0.004988736007362604\n",
            "epoch: 468 loss 0.004972696304321289\n",
            "epoch: 469 loss 0.0049567436799407005\n",
            "epoch: 470 loss 0.0049408781342208385\n",
            "epoch: 471 loss 0.004925092216581106\n",
            "epoch: 472 loss 0.004909399431198835\n",
            "epoch: 473 loss 0.004893776960670948\n",
            "epoch: 474 loss 0.004878244828432798\n",
            "epoch: 475 loss 0.004862789064645767\n",
            "epoch: 476 loss 0.004847422707825899\n",
            "epoch: 477 loss 0.004832129925489426\n",
            "epoch: 478 loss 0.0048169237561523914\n",
            "epoch: 479 loss 0.004801790229976177\n",
            "epoch: 480 loss 0.004786740988492966\n",
            "epoch: 481 loss 0.004771769512444735\n",
            "epoch: 482 loss 0.0047568767331540585\n",
            "epoch: 483 loss 0.004742060787975788\n",
            "epoch: 484 loss 0.0047273216769099236\n",
            "epoch: 485 loss 0.004712662193924189\n",
            "epoch: 486 loss 0.004698075819760561\n",
            "epoch: 487 loss 0.004683563020080328\n",
            "epoch: 488 loss 0.004669127054512501\n",
            "epoch: 489 loss 0.004654772579669952\n",
            "epoch: 490 loss 0.004640480969101191\n",
            "epoch: 491 loss 0.004626270849257708\n",
            "epoch: 492 loss 0.004612135235220194\n",
            "epoch: 493 loss 0.0045980727300047874\n",
            "epoch: 494 loss 0.004584071226418018\n",
            "epoch: 495 loss 0.004570152144879103\n",
            "epoch: 496 loss 0.004556303843855858\n",
            "epoch: 497 loss 0.004542525392025709\n",
            "epoch: 498 loss 0.004528812598437071\n",
            "epoch: 499 loss 0.004515174310654402\n",
            "epoch: 500 loss 0.004501603543758392\n",
            "epoch: 501 loss 0.00448810588568449\n",
            "epoch: 502 loss 0.004474671091884375\n",
            "epoch: 503 loss 0.004461308009922504\n",
            "epoch: 504 loss 0.0044480119831860065\n",
            "epoch: 505 loss 0.004434778355062008\n",
            "epoch: 506 loss 0.004421618301421404\n",
            "epoch: 507 loss 0.004408523440361023\n",
            "epoch: 508 loss 0.004395491909235716\n",
            "epoch: 509 loss 0.004382522776722908\n",
            "epoch: 510 loss 0.004369627218693495\n",
            "epoch: 511 loss 0.004356789868324995\n",
            "epoch: 512 loss 0.00434401910752058\n",
            "epoch: 513 loss 0.004331309348344803\n",
            "epoch: 514 loss 0.004318661522120237\n",
            "epoch: 515 loss 0.00430608494207263\n",
            "epoch: 516 loss 0.004293565638363361\n",
            "epoch: 517 loss 0.00428110733628273\n",
            "epoch: 518 loss 0.00426871282979846\n",
            "epoch: 519 loss 0.0042563797906041145\n",
            "epoch: 520 loss 0.004244105890393257\n",
            "epoch: 521 loss 0.004231888800859451\n",
            "epoch: 522 loss 0.004219742026180029\n",
            "epoch: 523 loss 0.004207647405564785\n",
            "epoch: 524 loss 0.0041956123895943165\n",
            "epoch: 525 loss 0.004183639772236347\n",
            "epoch: 526 loss 0.0041717179119586945\n",
            "epoch: 527 loss 0.004159861244261265\n",
            "epoch: 528 loss 0.004148063249886036\n",
            "epoch: 529 loss 0.004136316478252411\n",
            "epoch: 530 loss 0.004124634433537722\n",
            "epoch: 531 loss 0.004113004542887211\n",
            "epoch: 532 loss 0.004101428668946028\n",
            "epoch: 533 loss 0.004089910537004471\n",
            "epoch: 534 loss 0.0040784478187561035\n",
            "epoch: 535 loss 0.0040670400485396385\n",
            "epoch: 536 loss 0.0040556928142905235\n",
            "epoch: 537 loss 0.004044391680508852\n",
            "epoch: 538 loss 0.004033150151371956\n",
            "epoch: 539 loss 0.004021953791379929\n",
            "epoch: 540 loss 0.004010817501693964\n",
            "epoch: 541 loss 0.003999733831733465\n",
            "epoch: 542 loss 0.003988706041127443\n",
            "epoch: 543 loss 0.003977724350988865\n",
            "epoch: 544 loss 0.003966798074543476\n",
            "epoch: 545 loss 0.003955926280468702\n",
            "epoch: 546 loss 0.00394509918987751\n",
            "epoch: 547 loss 0.003934327978640795\n",
            "epoch: 548 loss 0.003923606127500534\n",
            "epoch: 549 loss 0.003912931773811579\n",
            "epoch: 550 loss 0.0039023079443722963\n",
            "epoch: 551 loss 0.0038917353376746178\n",
            "epoch: 552 loss 0.0038812123239040375\n",
            "epoch: 553 loss 0.003870743792504072\n",
            "epoch: 554 loss 0.0038603132124990225\n",
            "epoch: 555 loss 0.003849932923913002\n",
            "epoch: 556 loss 0.0038396099116653204\n",
            "epoch: 557 loss 0.0038293295074254274\n",
            "epoch: 558 loss 0.003819093806669116\n",
            "epoch: 559 loss 0.0038089058361947536\n",
            "epoch: 560 loss 0.0037987639661878347\n",
            "epoch: 561 loss 0.0037886686623096466\n",
            "epoch: 562 loss 0.003778627375140786\n",
            "epoch: 563 loss 0.003768624970689416\n",
            "epoch: 564 loss 0.0037586695980280638\n",
            "epoch: 565 loss 0.003748757764697075\n",
            "epoch: 566 loss 0.0037388931959867477\n",
            "epoch: 567 loss 0.003729073563590646\n",
            "epoch: 568 loss 0.0037192991003394127\n",
            "epoch: 569 loss 0.003709565382450819\n",
            "epoch: 570 loss 0.0036998779978603125\n",
            "epoch: 571 loss 0.0036902313586324453\n",
            "epoch: 572 loss 0.0036806308198720217\n",
            "epoch: 573 loss 0.0036710731219500303\n",
            "epoch: 574 loss 0.003661559661850333\n",
            "epoch: 575 loss 0.003652090672403574\n",
            "epoch: 576 loss 0.0036426580045372248\n",
            "epoch: 577 loss 0.0036332698073238134\n",
            "epoch: 578 loss 0.0036239258479326963\n",
            "epoch: 579 loss 0.003614617045968771\n",
            "epoch: 580 loss 0.003605354344472289\n",
            "epoch: 581 loss 0.0035961326211690903\n",
            "epoch: 582 loss 0.0035869537387043238\n",
            "epoch: 583 loss 0.0035778095480054617\n",
            "epoch: 584 loss 0.00356870936229825\n",
            "epoch: 585 loss 0.0035596489906311035\n",
            "epoch: 586 loss 0.0035506244748830795\n",
            "epoch: 587 loss 0.0035416423343122005\n",
            "epoch: 588 loss 0.0035326990764588118\n",
            "epoch: 589 loss 0.003523795632645488\n",
            "epoch: 590 loss 0.0035149301402270794\n",
            "epoch: 591 loss 0.003506102366372943\n",
            "epoch: 592 loss 0.003497316036373377\n",
            "epoch: 593 loss 0.003488565795123577\n",
            "epoch: 594 loss 0.003479853505268693\n",
            "epoch: 595 loss 0.0034711784683167934\n",
            "epoch: 596 loss 0.0034625413827598095\n",
            "epoch: 597 loss 0.003453941782936454\n",
            "epoch: 598 loss 0.0034453750122338533\n",
            "epoch: 599 loss 0.003436845261603594\n",
            "epoch: 600 loss 0.003428352065384388\n",
            "epoch: 601 loss 0.0034199003130197525\n",
            "epoch: 602 loss 0.003411481622606516\n",
            "epoch: 603 loss 0.0034030962269753218\n",
            "epoch: 604 loss 0.0033947466872632504\n",
            "epoch: 605 loss 0.0033864369615912437\n",
            "epoch: 606 loss 0.0033781572710722685\n",
            "epoch: 607 loss 0.0033699176274240017\n",
            "epoch: 608 loss 0.0033617098815739155\n",
            "epoch: 609 loss 0.003353532636538148\n",
            "epoch: 610 loss 0.0033453963696956635\n",
            "epoch: 611 loss 0.003337287809699774\n",
            "epoch: 612 loss 0.0033292167354375124\n",
            "epoch: 613 loss 0.0033211777918040752\n",
            "epoch: 614 loss 0.00331317400559783\n",
            "epoch: 615 loss 0.003305202815681696\n",
            "epoch: 616 loss 0.0032972649205476046\n",
            "epoch: 617 loss 0.003289362182840705\n",
            "epoch: 618 loss 0.0032814843580126762\n",
            "epoch: 619 loss 0.003273643786087632\n",
            "epoch: 620 loss 0.003265836276113987\n",
            "epoch: 621 loss 0.003258058335632086\n",
            "epoch: 622 loss 0.0032503113616257906\n",
            "epoch: 623 loss 0.003242598380893469\n",
            "epoch: 624 loss 0.003234916366636753\n",
            "epoch: 625 loss 0.0032272629905492067\n",
            "epoch: 626 loss 0.003219646168872714\n",
            "epoch: 627 loss 0.003212055191397667\n",
            "epoch: 628 loss 0.003204498440027237\n",
            "epoch: 629 loss 0.003196968697011471\n",
            "epoch: 630 loss 0.003189471550285816\n",
            "epoch: 631 loss 0.003182003740221262\n",
            "epoch: 632 loss 0.0031745685264468193\n",
            "epoch: 633 loss 0.0031671596225351095\n",
            "epoch: 634 loss 0.0031597805209457874\n",
            "epoch: 635 loss 0.0031524335499852896\n",
            "epoch: 636 loss 0.003145110560581088\n",
            "epoch: 637 loss 0.0031378206331282854\n",
            "epoch: 638 loss 0.0031305616721510887\n",
            "epoch: 639 loss 0.003123326925560832\n",
            "epoch: 640 loss 0.0031161257065832615\n",
            "epoch: 641 loss 0.003108948701992631\n",
            "epoch: 642 loss 0.0031018031295388937\n",
            "epoch: 643 loss 0.0030946782790124416\n",
            "epoch: 644 loss 0.003087588818743825\n",
            "epoch: 645 loss 0.003080527065321803\n",
            "epoch: 646 loss 0.003073487663641572\n",
            "epoch: 647 loss 0.003066479926928878\n",
            "epoch: 648 loss 0.003059498965740204\n",
            "epoch: 649 loss 0.0030525443144142628\n",
            "epoch: 650 loss 0.0030456145759671926\n",
            "epoch: 651 loss 0.003038711380213499\n",
            "epoch: 652 loss 0.003031840780749917\n",
            "epoch: 653 loss 0.00302499090321362\n",
            "epoch: 654 loss 0.0030181691981852055\n",
            "epoch: 655 loss 0.003011376829817891\n",
            "epoch: 656 loss 0.0030046047177165747\n",
            "epoch: 657 loss 0.002997864270582795\n",
            "epoch: 658 loss 0.0029911480378359556\n",
            "epoch: 659 loss 0.0029844525270164013\n",
            "epoch: 660 loss 0.0029777868185192347\n",
            "epoch: 661 loss 0.002971145324409008\n",
            "epoch: 662 loss 0.0029645299073308706\n",
            "epoch: 663 loss 0.002957937540486455\n",
            "epoch: 664 loss 0.0029513719491660595\n",
            "epoch: 665 loss 0.0029448296409100294\n",
            "epoch: 666 loss 0.0029383155051618814\n",
            "epoch: 667 loss 0.0029318188317120075\n",
            "epoch: 668 loss 0.0029253519605845213\n",
            "epoch: 669 loss 0.0029189065098762512\n",
            "epoch: 670 loss 0.002912485273554921\n",
            "epoch: 671 loss 0.002906091744080186\n",
            "epoch: 672 loss 0.0028997198678553104\n",
            "epoch: 673 loss 0.0028933731373399496\n",
            "epoch: 674 loss 0.002887043636292219\n",
            "epoch: 675 loss 0.0028807425405830145\n",
            "epoch: 676 loss 0.002874462166801095\n",
            "epoch: 677 loss 0.0028682081028819084\n",
            "epoch: 678 loss 0.002861978253349662\n",
            "epoch: 679 loss 0.0028557665646076202\n",
            "epoch: 680 loss 0.002849582815542817\n",
            "epoch: 681 loss 0.002843417227268219\n",
            "epoch: 682 loss 0.00283727515488863\n",
            "epoch: 683 loss 0.0028311549685895443\n",
            "epoch: 684 loss 0.002825058065354824\n",
            "epoch: 685 loss 0.0028189809527248144\n",
            "epoch: 686 loss 0.0028129287529736757\n",
            "epoch: 687 loss 0.0028068991377949715\n",
            "epoch: 688 loss 0.002800889080390334\n",
            "epoch: 689 loss 0.0027949009090662003\n",
            "epoch: 690 loss 0.0027889367192983627\n",
            "epoch: 691 loss 0.002782992785796523\n",
            "epoch: 692 loss 0.0027770681772381067\n",
            "epoch: 693 loss 0.0027711607981473207\n",
            "epoch: 694 loss 0.002765284851193428\n",
            "epoch: 695 loss 0.002759425202384591\n",
            "epoch: 696 loss 0.002753583714365959\n",
            "epoch: 697 loss 0.0027477657422423363\n",
            "epoch: 698 loss 0.0027419677935540676\n",
            "epoch: 699 loss 0.002736190101131797\n",
            "epoch: 700 loss 0.0027304321993142366\n",
            "epoch: 701 loss 0.0027246945537626743\n",
            "epoch: 702 loss 0.00271897972561419\n",
            "epoch: 703 loss 0.0027132821269333363\n",
            "epoch: 704 loss 0.0027076059486716986\n",
            "epoch: 705 loss 0.002701947931200266\n",
            "epoch: 706 loss 0.0026963127311319113\n",
            "epoch: 707 loss 0.002690694062039256\n",
            "epoch: 708 loss 0.0026850972790271044\n",
            "epoch: 709 loss 0.002679518423974514\n",
            "epoch: 710 loss 0.002673960058018565\n",
            "epoch: 711 loss 0.0026684210170060396\n",
            "epoch: 712 loss 0.0026629045605659485\n",
            "epoch: 713 loss 0.002657396951690316\n",
            "epoch: 714 loss 0.002651917515322566\n",
            "epoch: 715 loss 0.0026464529801160097\n",
            "epoch: 716 loss 0.0026410087011754513\n",
            "epoch: 717 loss 0.0026355793233960867\n",
            "epoch: 718 loss 0.002630174858495593\n",
            "epoch: 719 loss 0.0026247850619256496\n",
            "epoch: 720 loss 0.0026194120291620493\n",
            "epoch: 721 loss 0.002614059019833803\n",
            "epoch: 722 loss 0.0026087246369570494\n",
            "epoch: 723 loss 0.002603408182039857\n",
            "epoch: 724 loss 0.002598108956590295\n",
            "epoch: 725 loss 0.0025928313843905926\n",
            "epoch: 726 loss 0.002587565453723073\n",
            "epoch: 727 loss 0.0025823204778134823\n",
            "epoch: 728 loss 0.002577098086476326\n",
            "epoch: 729 loss 0.002571886172518134\n",
            "epoch: 730 loss 0.002566695213317871\n",
            "epoch: 731 loss 0.0025615200866013765\n",
            "epoch: 732 loss 0.002556363819167018\n",
            "epoch: 733 loss 0.002551223151385784\n",
            "epoch: 734 loss 0.0025460992474108934\n",
            "epoch: 735 loss 0.0025409930385649204\n",
            "epoch: 736 loss 0.0025359017308801413\n",
            "epoch: 737 loss 0.0025308318436145782\n",
            "epoch: 738 loss 0.00252577499486506\n",
            "epoch: 739 loss 0.00252073653973639\n",
            "epoch: 740 loss 0.002515715081244707\n",
            "epoch: 741 loss 0.0025107089895755053\n",
            "epoch: 742 loss 0.0025057231541723013\n",
            "epoch: 743 loss 0.002500746166333556\n",
            "epoch: 744 loss 0.0024957924615591764\n",
            "epoch: 745 loss 0.0024908508639782667\n",
            "epoch: 746 loss 0.002485924167558551\n",
            "epoch: 747 loss 0.00248101563192904\n",
            "epoch: 748 loss 0.002476125257089734\n",
            "epoch: 749 loss 0.0024712500162422657\n",
            "epoch: 750 loss 0.00246638897806406\n",
            "epoch: 751 loss 0.002461543772369623\n",
            "epoch: 752 loss 0.002456717425957322\n",
            "epoch: 753 loss 0.002451901091262698\n",
            "epoch: 754 loss 0.0024471029173582792\n",
            "epoch: 755 loss 0.0024423201102763414\n",
            "epoch: 756 loss 0.0024375522043555975\n",
            "epoch: 757 loss 0.0024328024592250586\n",
            "epoch: 758 loss 0.002428062492981553\n",
            "epoch: 759 loss 0.0024233409203588963\n",
            "epoch: 760 loss 0.0024186361115425825\n",
            "epoch: 761 loss 0.0024139429442584515\n",
            "epoch: 762 loss 0.0024092679377645254\n",
            "epoch: 763 loss 0.0024046064354479313\n",
            "epoch: 764 loss 0.0023999582044780254\n",
            "epoch: 765 loss 0.0023953246418386698\n",
            "epoch: 766 loss 0.002390708774328232\n",
            "epoch: 767 loss 0.00238610222004354\n",
            "epoch: 768 loss 0.0023815161548554897\n",
            "epoch: 769 loss 0.002376943128183484\n",
            "epoch: 770 loss 0.0023723836056888103\n",
            "epoch: 771 loss 0.0023678371217101812\n",
            "epoch: 772 loss 0.00236330833286047\n",
            "epoch: 773 loss 0.0023587895557284355\n",
            "epoch: 774 loss 0.0023542875424027443\n",
            "epoch: 775 loss 0.0023497992660850286\n",
            "epoch: 776 loss 0.0023453214671462774\n",
            "epoch: 777 loss 0.002340861828997731\n",
            "epoch: 778 loss 0.0023364133667200804\n",
            "epoch: 779 loss 0.0023319825995713472\n",
            "epoch: 780 loss 0.002327563241124153\n",
            "epoch: 781 loss 0.0023231550585478544\n",
            "epoch: 782 loss 0.002318763639777899\n",
            "epoch: 783 loss 0.0023143833968788385\n",
            "epoch: 784 loss 0.0023100159596651793\n",
            "epoch: 785 loss 0.0023056655190885067\n",
            "epoch: 786 loss 0.002301326021552086\n",
            "epoch: 787 loss 0.002297003287822008\n",
            "epoch: 788 loss 0.0022926891688257456\n",
            "epoch: 789 loss 0.0022883897181600332\n",
            "epoch: 790 loss 0.002284102374687791\n",
            "epoch: 791 loss 0.002279829466715455\n",
            "epoch: 792 loss 0.002275572158396244\n",
            "epoch: 793 loss 0.002271323697641492\n",
            "epoch: 794 loss 0.0022670880425721407\n",
            "epoch: 795 loss 0.0022628677543252707\n",
            "epoch: 796 loss 0.0022586605045944452\n",
            "epoch: 797 loss 0.0022544634994119406\n",
            "epoch: 798 loss 0.002250279765576124\n",
            "epoch: 799 loss 0.0022461102344095707\n",
            "epoch: 800 loss 0.0022419504821300507\n",
            "epoch: 801 loss 0.002237802604213357\n",
            "epoch: 802 loss 0.0022336712572723627\n",
            "epoch: 803 loss 0.0022295513190329075\n",
            "epoch: 804 loss 0.0022254453506320715\n",
            "epoch: 805 loss 0.0022213486954569817\n",
            "epoch: 806 loss 0.002217263448983431\n",
            "epoch: 807 loss 0.0022131914738565683\n",
            "epoch: 808 loss 0.002209131605923176\n",
            "epoch: 809 loss 0.002205083379521966\n",
            "epoch: 810 loss 0.002201046794652939\n",
            "epoch: 811 loss 0.0021970218513160944\n",
            "epoch: 812 loss 0.0021930101793259382\n",
            "epoch: 813 loss 0.002189008519053459\n",
            "epoch: 814 loss 0.0021850208286195993\n",
            "epoch: 815 loss 0.002181044779717922\n",
            "epoch: 816 loss 0.0021770792081952095\n",
            "epoch: 817 loss 0.0021731252782046795\n",
            "epoch: 818 loss 0.0021691848523914814\n",
            "epoch: 819 loss 0.0021652523428201675\n",
            "epoch: 820 loss 0.002161332406103611\n",
            "epoch: 821 loss 0.00215742364525795\n",
            "epoch: 822 loss 0.0021535283885896206\n",
            "epoch: 823 loss 0.0021496443077921867\n",
            "epoch: 824 loss 0.002145772334188223\n",
            "epoch: 825 loss 0.002141907112672925\n",
            "epoch: 826 loss 0.002138057490810752\n",
            "epoch: 827 loss 0.0021342141553759575\n",
            "epoch: 828 loss 0.0021303861867636442\n",
            "epoch: 829 loss 0.0021265738178044558\n",
            "epoch: 830 loss 0.0021227598190307617\n",
            "epoch: 831 loss 0.0021189660765230656\n",
            "epoch: 832 loss 0.002115183509886265\n",
            "epoch: 833 loss 0.002111406298354268\n",
            "epoch: 834 loss 0.002107646083459258\n",
            "epoch: 835 loss 0.0021038923878222704\n",
            "epoch: 836 loss 0.002100147772580385\n",
            "epoch: 837 loss 0.0020964154973626137\n",
            "epoch: 838 loss 0.0020926971919834614\n",
            "epoch: 839 loss 0.0020889861043542624\n",
            "epoch: 840 loss 0.002085287356749177\n",
            "epoch: 841 loss 0.0020815988536924124\n",
            "epoch: 842 loss 0.002077919663861394\n",
            "epoch: 843 loss 0.0020742518827319145\n",
            "epoch: 844 loss 0.0020705920178443193\n",
            "epoch: 845 loss 0.002066947054117918\n",
            "epoch: 846 loss 0.0020633067470043898\n",
            "epoch: 847 loss 0.002059679012745619\n",
            "epoch: 848 loss 0.0020560643170028925\n",
            "epoch: 849 loss 0.0020524554420262575\n",
            "epoch: 850 loss 0.0020488582085818052\n",
            "epoch: 851 loss 0.0020452735479921103\n",
            "epoch: 852 loss 0.0020416947081685066\n",
            "epoch: 853 loss 0.002038131467998028\n",
            "epoch: 854 loss 0.0020345752127468586\n",
            "epoch: 855 loss 0.0020310254767537117\n",
            "epoch: 856 loss 0.0020274927373975515\n",
            "epoch: 857 loss 0.002023963490501046\n",
            "epoch: 858 loss 0.0020204440224915743\n",
            "epoch: 859 loss 0.0020169371273368597\n",
            "epoch: 860 loss 0.002013435820117593\n",
            "epoch: 861 loss 0.0020099508110433817\n",
            "epoch: 862 loss 0.002006473718211055\n",
            "epoch: 863 loss 0.002003003377467394\n",
            "epoch: 864 loss 0.0019995425827801228\n",
            "epoch: 865 loss 0.0019960927311331034\n",
            "epoch: 866 loss 0.001992653589695692\n",
            "epoch: 867 loss 0.0019892235286533833\n",
            "epoch: 868 loss 0.0019858013838529587\n",
            "epoch: 869 loss 0.0019823857583105564\n",
            "epoch: 870 loss 0.0019789808429777622\n",
            "epoch: 871 loss 0.001975588733330369\n",
            "epoch: 872 loss 0.001972203841432929\n",
            "epoch: 873 loss 0.001968828495591879\n",
            "epoch: 874 loss 0.0019654619973152876\n",
            "epoch: 875 loss 0.0019621059764176607\n",
            "epoch: 876 loss 0.0019587590359151363\n",
            "epoch: 877 loss 0.0019554204773157835\n",
            "epoch: 878 loss 0.001952089834958315\n",
            "epoch: 879 loss 0.0019487675745040178\n",
            "epoch: 880 loss 0.0019454591674730182\n",
            "epoch: 881 loss 0.0019421535544097424\n",
            "epoch: 882 loss 0.001938859117217362\n",
            "epoch: 883 loss 0.0019355752738192677\n",
            "epoch: 884 loss 0.0019322963198646903\n",
            "epoch: 885 loss 0.0019290311029180884\n",
            "epoch: 886 loss 0.0019257678650319576\n",
            "epoch: 887 loss 0.0019225215073674917\n",
            "epoch: 888 loss 0.0019192807376384735\n",
            "epoch: 889 loss 0.001916045555844903\n",
            "epoch: 890 loss 0.0019128205021843314\n",
            "epoch: 891 loss 0.0019096052274107933\n",
            "epoch: 892 loss 0.0019063985673710704\n",
            "epoch: 893 loss 0.0019032000564038754\n",
            "epoch: 894 loss 0.0019000101601704955\n",
            "epoch: 895 loss 0.0018968278309330344\n",
            "epoch: 896 loss 0.001893653767183423\n",
            "epoch: 897 loss 0.0018904866883531213\n",
            "epoch: 898 loss 0.0018873290391638875\n",
            "epoch: 899 loss 0.001884182682260871\n",
            "epoch: 900 loss 0.0018810407491400838\n",
            "epoch: 901 loss 0.0018779117381200194\n",
            "epoch: 902 loss 0.0018747885478660464\n",
            "epoch: 903 loss 0.0018716711783781648\n",
            "epoch: 904 loss 0.001868565334007144\n",
            "epoch: 905 loss 0.0018654647283256054\n",
            "epoch: 906 loss 0.001862370758317411\n",
            "epoch: 907 loss 0.0018592911073938012\n",
            "epoch: 908 loss 0.0018562162294983864\n",
            "epoch: 909 loss 0.0018531479872763157\n",
            "epoch: 910 loss 0.0018500882433727384\n",
            "epoch: 911 loss 0.001847035950049758\n",
            "epoch: 912 loss 0.0018439912237226963\n",
            "epoch: 913 loss 0.0018409577896818519\n",
            "epoch: 914 loss 0.0018379288958385587\n",
            "epoch: 915 loss 0.00183491047937423\n",
            "epoch: 916 loss 0.001831896835938096\n",
            "epoch: 917 loss 0.0018288949504494667\n",
            "epoch: 918 loss 0.001825896673835814\n",
            "epoch: 919 loss 0.001822908059693873\n",
            "epoch: 920 loss 0.0018199268961325288\n",
            "epoch: 921 loss 0.0018169552786275744\n",
            "epoch: 922 loss 0.0018139892490580678\n",
            "epoch: 923 loss 0.0018110257806256413\n",
            "epoch: 924 loss 0.0018080800073221326\n",
            "epoch: 925 loss 0.0018051357474178076\n",
            "epoch: 926 loss 0.0018021995201706886\n",
            "epoch: 927 loss 0.0017992716748267412\n",
            "epoch: 928 loss 0.001796351047232747\n",
            "epoch: 929 loss 0.0017934388015419245\n",
            "epoch: 930 loss 0.0017905301647260785\n",
            "epoch: 931 loss 0.0017876315396279097\n",
            "epoch: 932 loss 0.0017847403651103377\n",
            "epoch: 933 loss 0.0017818582709878683\n",
            "epoch: 934 loss 0.0017789840931072831\n",
            "epoch: 935 loss 0.0017761148046702147\n",
            "epoch: 936 loss 0.0017732486594468355\n",
            "epoch: 937 loss 0.001770398230291903\n",
            "epoch: 938 loss 0.0017675487324595451\n",
            "epoch: 939 loss 0.0017647084314376116\n",
            "epoch: 940 loss 0.0017618763959035277\n",
            "epoch: 941 loss 0.001759049715474248\n",
            "epoch: 942 loss 0.001756231882609427\n",
            "epoch: 943 loss 0.0017534163780510426\n",
            "epoch: 944 loss 0.0017506106523796916\n",
            "epoch: 945 loss 0.001747814705595374\n",
            "epoch: 946 loss 0.0017450221348553896\n",
            "epoch: 947 loss 0.0017422375967726111\n",
            "epoch: 948 loss 0.0017394589958712459\n",
            "epoch: 949 loss 0.001736690872348845\n",
            "epoch: 950 loss 0.0017339267069473863\n",
            "epoch: 951 loss 0.001731172320432961\n",
            "epoch: 952 loss 0.0017284232890233397\n",
            "epoch: 953 loss 0.0017256784485653043\n",
            "epoch: 954 loss 0.0017229446675628424\n",
            "epoch: 955 loss 0.0017202149610966444\n",
            "epoch: 956 loss 0.0017174900276586413\n",
            "epoch: 957 loss 0.0017147751059383154\n",
            "epoch: 958 loss 0.001712063909508288\n",
            "epoch: 959 loss 0.001709361094981432\n",
            "epoch: 960 loss 0.0017066631698980927\n",
            "epoch: 961 loss 0.001703976420685649\n",
            "epoch: 962 loss 0.0017012932803481817\n",
            "epoch: 963 loss 0.0016986160771921277\n",
            "epoch: 964 loss 0.0016959485365077853\n",
            "epoch: 965 loss 0.0016932835569605231\n",
            "epoch: 966 loss 0.0016906268429011106\n",
            "epoch: 967 loss 0.001687975600361824\n",
            "epoch: 968 loss 0.001685332041233778\n",
            "epoch: 969 loss 0.0016826954670250416\n",
            "epoch: 970 loss 0.0016800632001832128\n",
            "epoch: 971 loss 0.0016774411778897047\n",
            "epoch: 972 loss 0.0016748220659792423\n",
            "epoch: 973 loss 0.0016722100554034114\n",
            "epoch: 974 loss 0.00166960374917835\n",
            "epoch: 975 loss 0.0016670055920258164\n",
            "epoch: 976 loss 0.0016644116258248687\n",
            "epoch: 977 loss 0.0016618247609585524\n",
            "epoch: 978 loss 0.001659245346672833\n",
            "epoch: 979 loss 0.0016566700069233775\n",
            "epoch: 980 loss 0.001654103398323059\n",
            "epoch: 981 loss 0.0016515376046299934\n",
            "epoch: 982 loss 0.0016489846166223288\n",
            "epoch: 983 loss 0.0016464322106912732\n",
            "epoch: 984 loss 0.0016438895836472511\n",
            "epoch: 985 loss 0.001641349750570953\n",
            "epoch: 986 loss 0.001638819114305079\n",
            "epoch: 987 loss 0.0016362936003133655\n",
            "epoch: 988 loss 0.001633774721994996\n",
            "epoch: 989 loss 0.001631261082366109\n",
            "epoch: 990 loss 0.0016287550097331405\n",
            "epoch: 991 loss 0.0016262511489912868\n",
            "epoch: 992 loss 0.001623757416382432\n",
            "epoch: 993 loss 0.0016212720656767488\n",
            "epoch: 994 loss 0.0016187846194952726\n",
            "epoch: 995 loss 0.0016163060208782554\n",
            "epoch: 996 loss 0.001613831496797502\n",
            "epoch: 997 loss 0.0016113673336803913\n",
            "epoch: 998 loss 0.001608904218301177\n",
            "epoch: 999 loss 0.0016064513474702835\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "8JmFjKu5SSj_",
        "colab_type": "code",
        "outputId": "a382501f-9b67-46f4-ddf4-c2cf0401c00d",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 378
        }
      },
      "cell_type": "code",
      "source": [
        "plt.plot(range(epochs), losses)\n",
        "plt.ylabel('Loss')\n",
        "plt.xlabel('epoch')"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "Text(0.5, 0, 'epoch')"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 10
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 576x396 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "6tPbQJEUgpGh",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "def plot_decision_boundary(X, y):\n",
        "  x_span = np.linspace(min(X[:, 0]) -0.25, max(X[:, 0])+0.25)\n",
        "  y_span = np.linspace(min(X[:, 1]) -0.25, max(X[:, 1])+0.25)\n",
        "  xx, yy = np.meshgrid(x_span, y_span)\n",
        "  grid = torch.Tensor(np.c_[xx.ravel(), yy.ravel()])\n",
        "  pred_func = model.forward(grid)\n",
        "  z = pred_func.view(xx.shape).detach().numpy()\n",
        "  plt.contourf(xx, yy, z)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "0vjA-98adqfv",
        "colab_type": "code",
        "outputId": "4ab68034-b07e-497f-c9aa-d610c1a2543e",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 347
        }
      },
      "cell_type": "code",
      "source": [
        "plot_decision_boundary(X, y)\n",
        "scatter_plot()"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 576x396 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "KyzCB3fKj2Z4",
        "colab_type": "code",
        "outputId": "23d59b1b-172a-4984-8cdf-50ecdb28ad87",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 364
        }
      },
      "cell_type": "code",
      "source": [
        "x = 0.025\n",
        "y = 0.025\n",
        "point = torch.Tensor([x, y])\n",
        "prediction = model.predict(point)\n",
        "plt.plot([x], [y], marker='o', markersize=10, color=\"red\")\n",
        "print(\"Prediction is\", prediction)\n",
        "plot_decision_boundary(X, y)"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Prediction is 1\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAecAAAFKCAYAAAAnj5dkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAGxNJREFUeJzt3WFoVefhx/HfjVmMmizrLbmpkNEX\nTjqiNtXqOhuiLCTqViaCyWJKfDECY1upFgLFSUsG7d/VLYWOVgbmb7uiMCRjlP73wrxZCt3MZiSQ\nNgaatrJMU4i5MNQky2L0/F90N7u5Offcc889997n3vP9wKDXc02ehZhvnuc855yQZVmWAACAMUry\nPQAAALAScQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDCl+R5AzMLCQr6HAABAzpSXlyc9xswZAADD\nEGcAAAxDnAEAMExGcZ6YmFBzc7MuXLiw6lhTU5OeffZZHT16VEePHtX09HQmnwoAgMDwvCFsfn5e\nr7zyinbv3p30PX19fdqwYYPXTwEAQCB5njmXlZWpr69PkUjEz/EAABB4nmfOpaWlKi11/us9PT2a\nmprSk08+qe7uboVCIa+fDgCAwMjahrBjx47pZz/7mc6fP69PP/1UAwMD2fpUAAAUlazF+dChQ3r4\n4YdVWlqqPXv2aGJiIlufCgCAopKVON+9e1ddXV1aXFyUJA0PD2vz5s3Z+FQAABQdz+ecx8bGdPr0\naU1NTam0tFQDAwNqampSbW2tWlpatGfPHrW3t2vt2rWqq6vTgQMH/Bw3AABFK2RZlpXvQUjcWxsA\nECzcWxsAgAJCnAEAMAxxBgDAMMQZAADDEGcAAAxDnAEAMAxxBgDAMMQZAADDEGcAAAxDnAEAMAxx\nBgDAMMQZAADDEGcAAAxDnAEAMAxxBgDAMMQZAADDEGcAAAxDnAEAMAxxBgDAMMQZAADDEGcAAAxD\nnAEAMAxxBgDAMMQZAADDEGcAAAxDnAEAMAxxBgDAMMQZAADDEGcAAAxDnAEAMAxxBgDAMMQZAADD\nEGcAAAxDnAEAMAxxBgDAMMQZAADDEGcAAAxDnAEAMAxxBgDAMMQZAADDZBTniYkJNTc368KFC6uO\nXb58Wa2trWpvb9eZM2cy+TQAAASK5zjPz8/rlVde0e7du22Pv/rqq3rzzTf1u9/9Tn/5y1/02Wef\neR4kAABB4jnOZWVl6uvrUyQSWXXsxo0bqqqq0saNG1VSUqK9e/dqaGgoo4ECABAUnuNcWlqq8vJy\n22MzMzMKh8PLr8PhsGZmZrx+KgAAAoUNYQAAGCYrcY5EIopGo8uvp6enbZe/AQDAalmJc21trWZn\nZ3Xz5k0tLS1pcHBQDQ0N2fhUAAAUnZBlWZaXvzg2NqbTp09rampKpaWlqqmpUVNTk2pra9XS0qLh\n4WH19vZKkvbt26euri7Hj7ewsOBlGAAAFKRk+7akDOLsN+IMAAgSpzizIQwAAMMQZwAADEOcAQAw\nDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAA\nDEOcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkA\nAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEG\nAMAwpfkeAJBoeno630OQJNXU1OR7CAACKmRZlpXvQUjSwsJCvoeAPDAlxH4g5gDSUV5envQYcUZe\npIry5ORkjkay2qOPPpqVj0u8AcQjzjCGXZS9hHhsbMzV+7Zu3Zr2x04lG/Em3EDwZCXOp06d0ujo\nqEKhkE6ePKnHH398+VhTU5MeeeQRrVmzRpLU29ub8ocPcS5u6UbZbXz9lknM/Yw2sQaKn1OcPW0I\nu3LliiYnJ3Xx4kV9/vnnOnnypC5evLjiPX19fdqwYYOXD48i4jbKbmL8ySefeB7HY4895up9qcbh\nFO9UKwDpxDudc/GEHCg+nuI8NDSk5uZmSdKmTZt0+/Ztzc7OqqKiwtfBobAlBiadKGcS4kw+XqqI\nu/klIlnAvZ5HTxV1vzfVEXsg/zzFORqNasuWLcuvw+GwZmZmVsS5p6dHU1NTevLJJ9Xd3a1QKJT5\naFEQUkXZLnB+x9irdMaRLORel+T9jnpMusvt6caemAP+8+U658TT1seOHVNjY6Oqqqr03HPPaWBg\nQAcOHPDjU8Fw8T/YU0U5VQjHx8f9G1ga6urqXL3P6y8UuYp6jNu4ez1nnirmxBtIn6c4RyIRRaPR\n5de3bt1SdXX18utDhw4t//eePXs0MTFBnAMgWZjdRDlfIbaT6VhSxd3vc+fpRD1X58zj2cWbYAPO\nPMW5oaFBb775po4cOaJr164pEoksL2nfvXtXL7zwgn7zm9+orKxMw8PD2r9/v6+Dhlm8RtltBEdH\nRzMYnTf19fWe/64fv2gkC3ym586dQu51Bu4l2gQbcOb5Uqre3l5dvXpVoVBIPT09Gh8fV2VlpVpa\nWvTuu+/qvffe09q1a1VXV6eXX3455TlnLqUqTH6HOR8hzoVMYu/E7RJ8PLc71+N5ucSM68EBZ9yE\nBFnjJs5uwlysUXZiUrBjvIRb8vdmL9m6Q5sdYo98Is7IGrs4E2ZvshXrmEyiHeM13naycfc2Kbtx\nJ+bwE3FGVqSaNRNm/2Q73DF+BDyRn0GXzJ6lE2+kgzgjK9KZNQftHHM+5CrgibIR9JhMw27C7VgJ\nNpIhzsiKWJxTzZoJc+Eo5MDnYqObH8Em1oghzvCd21mz02VFxLm4mbThLd1w52N3OtEOHuIM32Ua\nZ8IcTCYFW8rP7nQijhjfn0oFAF4k/lLmV6yT/RKY6d3aMr3Vql3EM72dKjdwCQbiDCBvnFZQ/Ah3\nqru1+XmrVb9vrWoXcTfBJtTFgTgDMJKbUx+ZBjzdW606xTxbIY+PdnywnUJNoAsfcQZQsDLZu+Al\n7F7vm54YdaeQJ4Y7Ptp2obaLdGwmTaQLF3EGEEh+bkpMFfp0ltftwh0Ltl2onWbTRLpwEWcAyFCm\nG93i4223dB4LdvysOhbqxNl0spk0gS4sxBkAfBYfaz9D7SbSyQKNwsJ1zvAskzuEcZ0zgszL+e5k\nm9ESz1HHIm0XaGbPZuE6ZwAwiJdl8Ngvualm02NjY9q6davthjGWtwsHM2d45nSXMO6tDWQuVbQT\nQx0/i44/F504iybQZuD2ncgKt3GWWNoG/JAs1skiTaDN5hTnkhyOAwHi9zN8ASBIiDN8lckDAQAA\nXyLO8CydZTE/ntcLAEFBnJE1LG0DueH1tqIwF3GGL9zc9CBx9pytZ/sCxYpNlMFBnOG7+PPOzJ4B\nIH3EGQAAwxBn+CZ+aTvZrm02hgHeubnO2W61imucCw9xRkbc/CNnaRvInmRhTvYLMmEuDMQZWcM1\nz0B2uQlz/KyZMBcO4gxfJdu1Hf+DI/4HCju2AXcS/62kG2YUFuIMAAUm3aVsFB7ijIw5LZVxWRWQ\nufhZs9swswmssBFn+I6lNMA/hDmYiDOyItVlVVxSBTirr68nzAFGnOGLTH4AsCkMWMnr5q/EndmE\nuXARZ2SN3fJ2svPOBBr4UuJs2cuubKJc+IgzcsLNLlICjSBzWsaWCHPQEGf4xu6HgtPmMM47A19K\ntYxNmIOnNN8DQPA89thj+uSTT2yP1dfX81i8LKt88EDf//e/VfPggaZLSvR/a9fqbgm/p+eLl9my\nxJ2/ih1xhq9qamo0PT1te2zr1q0aGxvL8YgQ74W5OR2fn9eGuD/7n9lZ/Xr9er2xYUPSvwf/ud30\nJTFbDiLiDN85BdoNZs/Z8cLcnE7Oz6/68w3S8p8T6NxgtoxUiDOy7tFHH9Xk5KTtsbq6Oo2Pj+d4\nRMFT+eCBjtuEOd7x+Xn977p1mmWJO2uYLcMtz/8KT506pfb2dh05ckQfffTRimOXL19Wa2ur2tvb\ndebMmYwHicKT6odHqlt5snPbX9//97+Vak684T/vQ3akc4mU01OlCHMweJo5X7lyRZOTk7p48aI+\n//xznTx5UhcvXlw+/uqrr+rcuXOqqalRZ2en9u/fr2984xu+DRqFwW55m/PO+VHz4IGv74N7zJbh\nhaeZ89DQkJqbmyVJmzZt0u3btzU7OytJunHjhqqqqrRx40aVlJRo7969Ghoa8m/EKEheLqli9uyf\naZdL1W7fB3eYLcMrT/8So9GoHnrooeXX4XBYMzMzkqSZmRmFw2HbY0C8ZM94hv/+b+1azaV4z9x/\n3ofMxd9QxC7K6dyCE8Hky4Ywy7L8+DAoQixtm+FuSYl+vX697W7tmF+vX89msAx5XcKW2ImNlTzF\nORKJKBqNLr++deuWqqurbY9NT08rEolkOEwEATu3syt2mVTidc5zEtc5+8CPy6Mkwowvefo1uaGh\nQQMDA5Kka9euKRKJqKKiQpJUW1ur2dlZ3bx5U0tLSxocHFRDQ4N/I0bBSudBGDGcd/bXGxs2aNvD\nD+t4RYVOrV+v4xUV2vbww4Q5A6ke7Rj7Hrc7r8y5ZSQTsjyuSff29urq1asKhULq6enR+Pi4Kisr\n1dLSouHhYfX29kqS9u3bp66urpQfb2FhwcswUADil7Xjr3eOLW0n3sozcfbMDUlgKjfPW5ZYwoa9\n8vLypMc8x9lvxLl4pYqztDLQxBmmYwkbfiDOyLtMZs/EGaZwu+GLKMMNpzhz+04YwelJVUC+eY2y\nxBI2vCHOyCsuq4LJ/Lo0SiLMSA/L2siJxGud0z33zNI2csnuKgGWsOE3lrVhNGbPMIWfUZYIM7wj\nzsiJxDuFJXuMJOeekS9OYSbKyDXiDGNxxzDkAkvYMBHnnJEzieedpdSXVXHeGdmQ7M5zRBm5xHXO\nMIZToO02hnFDEvjJ7yhLhBnesSEMBYGNYcimdMJMlJFvzJyRc25mz9zOE37JZLZMlJFNzJxRcJx2\nbdfX1xNouJIqzEQZpiLOyLnEy6risbSNTDk9ZtRLlCXCjNwjzsgLp0C7wewZidxEWbI/r0yUYRri\nDCMkuymJxPXOSM3rZi+iDFMRZ+RNqtlzqruFMXuG181eRBmmI87IK7tAc94ZbrDZC8WMOMMYXpa2\nmT0Hj59L2EQZpiLOMFr80jbnnoMt1T2wJfdL2EQZpiPOyDuWtuGEKCOIiDMKCrPn4PAaZYkHU6Dw\nEWcYxe68M7u2gycxzF6iTJBRyIgzjJVsaZvZc/EiysCXiDMKQqrZMwqf2zATZQQBT6WCMeI3hcUv\nbds9qUpa+bQqlrULV3yUnWbKkn2YiTIKFU+lQlFg9lxcMo2yRJhRvIgzjOfmsio2hRUOogykRpxh\npGR3C+OmJIUtWZiTbfSSiDKCiTjDGDznuXhlGmWJMCNYiDOM5Wb2DPPFwsxMGXCPOKNg2M2eWdo2\nEzNlIDPEGUZJXNp2elJVIjaF5ZfT7TadoiwxWwYSEWcYL51behLo3PL6TGWJB1MATogzCgobw8zg\n9ZnKElEG3OAOYTCS3a7t2OzZ7o5hieedmT1nT6qnRaW6zWY8oowg4w5hKEpOu7ZZ3vaflyVsZsmA\nN8QZRvLjmmcCnblkQZaIMpBNxBnGSmfnNpdU+ctNlKXVS9gsXwP+IM4oaKluSMLsOT1eoywxWwb8\nRJxhtGTL2+za9l+qjV6SuygTZCBznnZr37t3TydOnNAXX3yhNWvW6Be/+IW+/vWvr3jPli1btGPH\njuXXv/3tb7VmzZqkH5Pd2nBi96xnN7u2Y5g9J+dHlAkykD7fd2v/8Y9/1Fe/+lW9/vrr+vOf/6zX\nX39db7zxxor3VFRU6Pz5814+PJAWnlTlTTrXKkv255WJMpAdnuI8NDSkQ4cOSZKefvppnTx50tdB\nAYnslreTLW0TaGfpzJQlogzkg6c4R6NRhcNhSVJJSYlCoZAWFxdVVla2/J7FxUV1d3drampK+/fv\n1w9/+EN/RozAS+d2njFsDPMeZem/YSbKQG6kjHN/f7/6+/tX/FniDzm709YvvviiDh48qFAopM7O\nTu3cuVPbtm3LcLjASvGzZ5a3k0v2lKiYVFGWCDOQS542hJ04cULPPPOMGhsbde/ePTU1NenDDz9M\n+v5f/vKX2rRpkw4fPpz0PWwIgxt2G8Mk+81h0soNYkGcOSfOltOdKUtEGcgWpw1hJV4+YENDgy5d\nuiRJGhwc1FNPPbXi+PXr19Xd3S3LsrS0tKSRkRFt3rzZy6cC0hIfm0RO1/AWm/r6+lWz5cSNXvE7\nsOPPK8cvYRNmID88nXP+3ve+p8uXL6ujo0NlZWV67bXXJElnz57Vrl27tH37dj3yyCNqbW1VSUmJ\nmpqa9Pjjj/s6cCAey9v/5bSEzUwZKAw8lQoFJ9nStpT62udiXdr2unwtEWYgX5yWtYkzCk7iJVV2\n556lYDxSkigDhYs4o+gEOdCZXBIlEWXAFMQZRclNoFPd2rNQAp3uAykk5yhLhBnIN+KMopUs0G5n\nz5L5gfZ6m80YogyYiTijaNk9scop0E47t02LNFEGihtxRlErpkCzfA0EB3FGIKS6e5hk5uMlU90c\nxWuUJcIMmIw4IzD8CrSU/UgTZSDYiDMCw49LrBL5HWmiDEAizggYt4GWchfpdIIcE3/v63hEGSgO\nxBmB4xRoyfssWnIfaTcP2nD7+Ea7IEtEGShkxBmBlM1AZ8IuyJK7h1LEEGWg8BFnBJbTZVYxySId\n40es3QRZIspAkBBnBJ7XWXQyicFOFl87ds+cJspA8BBnQOnPoiV3oU7FLsYSG72AoCPOwH94CXS8\nVLFOFuKYxCBL3NELCCriDCRwE2nJOdRuuQmyRJSBoCHOgA23gY5xG2q7GMcwSwYQQ5wBB+lGOmZs\nbMwxxPGIMoBExBlwwS7SMW5iHY+bhgBIhTgDLjkFOhNEGUAi4gykya9IE2UAyRBnAAAM4xTnkhyO\nAwAAuECcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAADEOcAQAwDHEGAMAw\nxBkAAMMQZwAADEOcAQAwDHEGAMAwxBkAAMMQZwAADOM5zleuXNHu3bs1ODhoe/z999/X4cOH1dbW\npv7+fs8DBAAgaEq9/KV//OMfeuedd7Rjxw7b4/Pz8zpz5ox+//vf6ytf+YpaW1vV0tKir33taxkN\nFgCAIPA0c66urtZbb72lyspK2+Ojo6Patm2bKisrVV5erh07dmhkZCSjgQIAEBSeZs7r1q1zPB6N\nRhUOh5dfh8NhzczMePlUAAAETso49/f3rzpn/Pzzz6uxsdH1J7EsK/2RAQAQUCnj3NbWpra2trQ+\naCQSUTQaXX5969YtPfHEE+mPDgCAAMrKpVT19fX6+OOPdefOHc3NzWlkZEQ7d+7MxqcCAKDohCwP\na84ffPCBzp07p+vXryscDqu6ulpvv/22zp49q127dmn79u26dOmSzp07p1AopM7OTh08eNDxYy4s\nLHj+PwEAQKEpLy9PesxTnLOBOAMAgsQpztwhDAAAwxBnAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAM\nQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDEGQAA\nwxBnAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYA\nwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wB\nADAMcQYAwDDEGQAAw4Qsy7LyPQgAAPBfzJwBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDE\nOYeuXLmi3bt3a3Bw0Pb4+++/r8OHD6utrU39/f05Hp2Z7t27p+7ubnV0dKizs1M3btxY9Z4tW7bo\n6NGjy/+7f/9+HkZqjlOnTqm9vV1HjhzRRx99tOLY5cuX1draqvb2dp05cyZPIzSX09euqalJzz77\n7PL32fT0dJ5GaZ6JiQk1NzfrwoULq47xPeeRhZyYnJy0fvzjH1s//elPrT/96U+rjs/NzVn79u2z\n7ty5Y/3rX/+ynnnmGeuf//xnHkZqlj/84Q/Wz3/+c8uyLOvDDz+0jh8/vuo93/rWt3I9LGP97W9/\ns370ox9ZlmVZn332mfWDH/xgxfHvfve71hdffGHdv3/f6ujosD799NN8DNNIqb523/nOd6zZ2dl8\nDM1oc3NzVmdnp/XSSy9Z58+fX3Wc7zlvmDnnSHV1td566y1VVlbaHh8dHdW2bdtUWVmp8vJy7dix\nQyMjIzkepXmGhobU0tIiSXr66af5mqQwNDSk5uZmSdKmTZt0+/Ztzc7OSpJu3Lihqqoqbdy4USUl\nJdq7d6+GhobyOVyjOH3tkFxZWZn6+voUiURWHeN7zjvinCPr1q3TmjVrkh6PRqMKh8PLr8PhsGZm\nZnIxNKPFf11KSkoUCoW0uLi44j2Li4vq7u7WkSNH9M477+RjmMaIRqN66KGHll/Hfx/NzMzwPebA\n6WsX09PTo46ODvX29sri5oqSpNLSUpWXl9se43vOu9J8D6AY9ff3rzpn/Pzzz6uxsdH1xwjiP3y7\nr9vo6OiK13ZflxdffFEHDx5UKBRSZ2endu7cqW3btmV1rIUiiN9Hfkn82h07dkyNjY2qqqrSc889\np4GBAR04cCBPo0OxI85Z0NbWpra2trT+TiQSUTQaXX5969YtPfHEE34PzWh2X7cTJ05oZmZG3/zm\nN3Xv3j1ZlqWysrIV7+no6Fj+729/+9uamJgIbJztvo+qq6ttj01PT9suRQaV09dOkg4dOrT833v2\n7NHExARxToHvOe9Y1jZEfX29Pv74Y925c0dzc3MaGRnRzp078z2svGtoaNClS5ckSYODg3rqqadW\nHL9+/bq6u7tlWZaWlpY0MjKizZs352OoRmhoaNDAwIAk6dq1a4pEIqqoqJAk1dbWanZ2Vjdv3tTS\n0pIGBwfV0NCQz+Eaxelrd/fuXXV1dS2fUhkeHg7095lbfM95x1OpcuSDDz7QuXPndP36dYXDYVVX\nV+vtt9/W2bNntWvXLm3fvl2XLl3SuXPnlpdnDx48mO9h5939+/f10ksv6e9//7vKysr02muvaePG\njSu+br/61a/017/+VSUlJWpqatJPfvKTfA87r3p7e3X16lWFQiH19PRofHxclZWVamlp0fDwsHp7\neyVJ+/btU1dXV55Haxanr927776r9957T2vXrlVdXZ1efvllhUKhfA8578bGxnT69GlNTU2ptLRU\nNTU1ampqUm1tLd9zGSDOAAAYhmVtAAAMQ5wBADAMcQYAwDDEGQAAwxBnAAAMQ5wBADAMcQYAwDDE\nGQAAw/w/2+3VIhAu++IAAAAASUVORK5CYII=\n",
            "text/plain": [
              "<Figure size 576x396 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "83nwFhM5lwmP",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        ""
      ],
      "execution_count": 0,
      "outputs": []
    }
  ]
}